#imclude <io.h> требуется только для объявления функции char *mktemp(template); char *template; шаблон имени файла
Описание.
Функция mktemp создает уникальное имя файла, модифицируя данный template . Аргумент template имеет форму:
baseXXXXXX,
где base является частью нового имени файла, предлагаемого пользователем и X...X являются знакоместами для части, формируемой mktemp ; mktemp сохраняет base и заменяет шесть Х алфавитным символом, следующим за значением из 5 цифр. 5-цифровое значение является уникальным номером, идентифицирующим вызываемый процесс. При первом вызове mktemp с заданным template алфавитный символ равен символу 0('0'). В последующих вызовах из того же самого процесса с тем же самым template mktemp проверяет, использовались ли ранее возвращенные имена для создания файлов. Если файла с за данным именем не существует, mktemp возвращает это имя. Если для всех ранее возвращенных имен файлы существуют, mktemp создает но вое имя, заменяя в нем алфавитный символ следующей доступной буквой нижнего регистра.
Например, если первое возвращенное имя было t012345 и это имя использовалось для создания файла, то следующее возвращаемое имя будет ta12345 . При создании новых имен mktemp использует '0' и буквы нижнего регистра от "a" до "z".
Возвращаемое значение.
Функция mktemp возвращает указатель на модифицированный template . Возвращаемым значением является NULL , если аргумент template образован неверно или больше не может быть создано уникальных имен из заданного template.
Замечание.
Функция mktemp генерирует уникальные имена файлов, но не создает и не открывает файлы.
Пример:
#include <io.h> char *template="fnXXXXXX"; char *result; /* следующий оператор вызывает mktemp для создания ** уни- кального имени файла */ result=mktemp(template);